Fitness and wellness system with dynamically adjusting guidance

ABSTRACT

A system is provided that provides guidance (e.g., audio content) to a user while exercising. This audio content is tailored to the particular user and is aimed at increasing the effectiveness of the exercising. In some cases, the audio content conveyed to the user can be based on one or more sensors providing various metrics (e.g., heart rate, cadence, breathing rate, galvanic skin response, temperature etc.) regarding the real-time performance of the user. In some cases, the guidance to a user may be downloaded dynamically to the device by a specialized server or wireless connection. In addition, the guidance can be dynamically adjusted based on a variety of factors including data obtained from the sensors. Related apparatus, systems, techniques and articles are also described.

CROSS REFERENCE TO RELATED APPLICATION

The present application claims priority under 35 U.S.C. § 119 to U.S.Provisional Application Ser. No. 61/580,569, filed Dec. 27, 2011,entitled FITNESS AND WELLNESS SYSTEM WITH DYNAMICALLY ADJUSTINGGUIDANCE, the disclosure of which is incorporated herein by reference

TECHNICAL FIELD

The subject matter described herein relates to a system that providesreal-time and dynamically adjustable guidance to a user undergoingphysical exercise/training and/or wellness routines based on theperformance of the user as monitored by one or more sensors.

BACKGROUND

Athletes and non-athletes are increasingly using training plans fortheir workouts. These training plans specify certain exercises/routinesand corresponding goals and, in some cases, can include areas for theuser to record his or her results (e.g., finished, times, weight levels,etc.). A training plan can include one or more individual workouts.Current training plans are typically offered as a hard copy/print outplan. With written training plans, the user can see all the workoutsassigned to him or her and the dates when they need to be done. With astatic audio plan the user is getting instruction but without anyreal-time guidance related to form, time or performance. With videoplans, the user sees the workout but is limited to exercising in an areawhere there is access to a video monitor. In all cases, the user iswithout the benefit of feedback and without the benefit of a coach whocan monitor and adjust the workout intensity or other relevant featuresof the workout. Without a personal coach, it is the responsibility ofthe user to understand and remember the workout and how to execute itproperly per the plan. It can be very difficult to remember the detailsof complex workouts and keep track of such timing and efforts withoutdistractions of reading the training plan (and recording entries in thetraining plan such as heart rate). In addition, such training plans canalso be difficult for the casual or occasional user to accurately followand to understand if the intensity of the effort is in line with theplan.

Training plans (and workouts) often specify heart rate (HR) zones inorder to define the intensity and the stress on the body of a user.However, it can be very difficult to know/understand the relative HR forthe user and to perform the workouts within certain HR zones to makethem most effective. As a result, most people who casually exercise orexercise without a coach are likely to perform their workoutsineffectively or incorrectly. Such poor performance result in limited orvery slow progress towards their exercise/fitness goal and can beun-motivating and undermine the goal.

SUMMARY

Systems and techniques are described that provide guidance (e.g.,audio-based guidance, etc.) and biometric feedback to a user undergoingphysical exercise and/or wellness routines to maximize/optimize theeffect of the physical exercise (sometimes according to a pre-definedtraining plan or other training content). The audio guidance can betriggered based on pre-defined criteria such as time intervals and/or itcan be triggered based on measured performance metrics from one or moresensors coupled to and/or characterizing a user. The guidance can betriggered by an action of a user (e.g., pressing a button, etc.).

In one aspect, data is accessed that comprises a training plan thatspecifies at least one workout. Each workout specifies at least onephysical exercise and associated performance parameters relating to theat least one physical exercise. Thereafter, data is received during aworkout by a user according to the training plan that characterizes atleast one of a physiological measurement of the user, a position of theuser, and an environment of the user. Next, guidance to provide to theuser is determined, based on the received data and using the trainingplan, for the user to comply with the training plan and the associatedperformance parameters. Subsequently, provision of the guidance to theuser is initiated in real-time during the workout to allow the user toadjust his or her workout accordingly.

At least a portion of the received data can be generated by at least onesensor. The at least one sensor can include at least one biometricsensor characterizing at least one physiological measurement taken fromthe user during the workout. The at least one biometric sensor cancharacterize a variety of attributes including, for example one or moreof: a heart rate of the user, a distance travelled by the user duringthe workout, a current speed of the user during the workout, a powermetric relating to the workout, a cadence of the user during theworkout, a number of calories burned by the user, a breathing rate ofthe user, a galvanic skin response of the user, and body temperature ofthe user. The data from the at least one biometric sensor can bereceived continuously and in real-time during the workout such that theguidance adapts based on the data received from the at least onebiometric sensor, the training plan, and the associated performanceparameters.

The guidance can take a variety of forms, including, for example, audioguidance and video guidance. The training plan can comprise a pluralityof workouts each having different training criteria. At least two of theworkouts can have differing associated performance parameters. Thetraining plan can be selected based on performance of the user duringhistorical workouts.

The accessing, receiving, and determining can be performed by a portabledevice worn by the user comprising at least one data processor andmemory. The portable device can include at least one of headphones and adisplay interface. The portable device and the headphones can, in somevariations, be integrated. The portable device can wirelesslycommunicate with at least one sensor characterizing performance of theuser during the workout. The portable device can be a mobile phone.

The training plan can be selected among a plurality of training plans bythe user via an online portal. Each training plan can include metadatacharacterizing one or more attributes of the training plan such that themetadata is searchable by the user via the online portal. Each workoutcan include metadata characterizing one or more attributes of theworkout such that the metadata is searchable by the user via the onlineportal.

The guidance can include information characterizing at least one of:elapsed time of the workout, a distance travelled by the user during theworkout, a current speed of the user during the workout, a power metricrelating to the workout, a cadence of the user during the workout, anumber of calories burned by the user, a breathing rate of the user, agalvanic skin response of the user, and body temperature of the user. Inaddition or in the alternative, the guidance can include at least oneof: a current time, a current altitude of the user, a current locationof the user, weather at the current location of the user, messages fromthird parties to the user, hydration prompts to the user, and foodprompts to the user.

The training plan can include two or more concatenated workouts. Thetraining plan can include training content that coaches the user followto an exercise routine. The training content can be used to provideadjustable guidance to the user in real-time based on the performance ofthe user. The guidance can be variable based on criteria specified bythe training content. The criteria can include one or more of caloriesburned by the user during the workout, weight loss of the user duringthe workout, and temperature of the user during workout. The trainingcontent can be broadcasted to a plurality of users concurrently engagingin the workout. The training content can be stored on a training contentserver that is accessible by at least one computer network. The trainingcontent server can store a profile for the user that includesperformance data regarding historical workouts and associated trainingplans.

The training plan can be generated using a training content generatorplatform. The training content generator plan can provide a graphicaluser interface for generating training plans. The training contentgenerator can allow a user to specify, for a workout, one or more of:activity intensities, nutrition guidelines, and hydration guidelines.

The guidance can be provided in response to the user activating anelement on a portable device worn by the user during the workout. Theguidance is pushed to the user during the workout based on the receiveddata.

The training plan can be selected based on a heart rate test previouslyexecuted by the user. The heart rate test can provide guidance to theuser requiring various levels of exertion while, at the same time,monitoring a heart rate of the user.

In some cases, advertisements are provided to the user during theworkout and/or when selecting and/or configuring the training plan.

The current subject matter can be implemented using a variety of devicesand architectures ranging from a fully integrated single device withoutnetwork connectivity to a distributed device communicating with variouscomponents such as the biometric sensors via directed paired connectionsand to a hybrid combination of both with (continual or periodic) accessto a computer network.

In one variation, the accessing, receiving, and determining areperformed by a portable device worn by the user that includes at leastone data processor and memory. The portable device can include at leastone of headphones and a display interface in order to provide theguidance. In some cases, the headphones are integrated into the portabledevice while in other implementations the headphones are connected viaan audio jack and/or are wirelessly paired to the portable device. Theportable device can be a dedicated hardware device or some or more ofthe aspects of the portable device can be provided by a smart phone(e.g., an IPHONE or a phone compatible with the ANDROID or WINDOWSoperating systems, etc.).

In an interrelated aspect, data comprising a training plan thatspecifies at least one physical exercise and associated performanceparameters is accessed. Thereafter, data is received from at least oneexercise machine characterizing interaction by a user with the exercisemachine during a workout. It is then determined, based on the receiveddata and using the training plan, guidance to provide to the user duringthe workout in order to comply with the training plan. Subsequently,provision of the guidance is initiated to the user in real-time duringthe workout to allow the user to adjust his or workout accordingly.Biometric sensors can also be employed that are used to determineguidance to provide to the user when using the exercise machine.

In an interrelated aspect, a virtual race is initiated amongst aplurality of portable device. Each portable device is used by adifferent single user of a plurality of users and each portable deviceincludes data characterizing a training plan associated with the virtualrace. Thereafter, the portable device monitors performance of each userwhile engaging in the virtual race. It is determined, based on themonitored performance and using the training plan, guidance to provideto each user during the workout in order to comply with the trainingplan. Subsequently, guidance to the user is initiated in real-timeduring the virtual race to allow each user to adjust his or performanceaccordingly.

In a further interrelated aspect, data is received that is generatedfrom at least one biometric sensor characterizing performance of a userin connection with each of a plurality of a plurality of workouts inrelation to respective training plans. Thereafter, data is generatedincluding at least one analytic characterizing the performance of theuser in relation to the training plans. Data is then generated thatincludes at least one report based on the generated at least oneanalytic that provides a view of the at least one analytic. The reportcan be provided in a variety of manners including displaying, loading,storing, and transmitting to a remote computing device.

Computer program products are also described that comprisenon-transitory computer readable media storing instructions, which whenexecuted one or more data processor of one or more computing systems,causes at least one data processor to perform operations herein.Similarly, computer systems are also described that may include one ormore data processors and a memory coupled to the one or more dataprocessors. The memory may temporarily or permanently store instructionsthat cause at least one processor to perform one or more of theoperations described herein. In addition, methods can be implemented byone or more data processors either within a single computing system ordistributed among two or more computing systems. Such computing systemscan be connected and can exchange data and/or commands or otherinstructions or the like via one or more connections, including but notlimited to a connection over a network (e.g. the Internet, a wirelesswide area network, a local area network, a wide area network, a wirednetwork, or the like), via a direct connection between one or more ofthe multiple computing systems, etc.

The subject matter described herein provides many advantages. Forexample, by utilizing real-time sensor data, the current subject mattercan give real-time guidance and performance correcting instruction to auser exercising to help optimize his or her workout. This real-timeguidance is also advantageous in that it dynamically adjusts based onthe sensor data and is conveyed to the user through an auditor prompt(which obviates the need for the user to check a written training planand/or consult a handheld or wrist worn/mounted device, etc.). Inaddition, the current subject matter can be used to identify anappropriate training program (warmup, workout intensity, recover, etc.)for a particular user based on his or her historical and/or real-timeperformance.

The details of one or more variations of the subject matter describedherein are set forth in the accompanying drawings and the descriptionbelow. Other features and advantages of the subject matter describedherein will be apparent from the description and drawings, and from theclaims.

DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram illustrating an integrated training system;

FIG. 2 is a diagram illustrating various implementations of anintegrated training system;

FIG. 3 is a diagram illustrating another implementation of an integratedtraining system;

FIG. 4 is a diagram illustrating various operational states of anintegrated training system;

FIG. 5 is a first view of a portal providing various training plans;

FIG. 6 is a second view of a portal providing various training plans;

FIG. 7 is a view of a dashboard characterizing various workout metricsrelating to a user;

FIG. 8 is a view illustrating a training log for a user and performanceanalytics regarding one or more workouts;

FIG. 9 is a view illustrating scheduled workouts specified by a trainingplan for a user;

FIG. 10 is a view of an interface for generating workouts;

FIG. 11 is a view of metadata being specified/attached to a workout;

FIG. 12 is a process flow diagram illustrating monitoring performance ofa user during a workout and providing feedback according to a trainingplan;

FIG. 13 is a process flow diagram illustrating monitoring performance ofa user during a workout using an exercise machine and providing feedbackaccording to a training plan;

FIG. 14 is a process flow diagram illustrating initiating a virtual raceamongst a plurality of users of portable devices and providing feedbackto the users according to one or more training plans during the virtualrace; and

FIG. 15 is a process flow diagram illustrating analytics relating to theperformance of users during workouts according to training plans.

DETAILED DESCRIPTION

FIG. 1 is diagram 100 illustrating a user wearing one or more sensorsand utilizing a portable device (PD) (as will be further describedbelow). The PD downloads content (either wirelessly or via a removablewired connection directly or via a remote computer) from a TrainingContent Server (TCS) (further defined below). The user carries the PDwhile exercising (e.g., coupled to a waistline of the user, strapped toan arm of the user, etc.). The PD can output audio to the user (eithervia a built-in speaker or via wired/wireless headphones). The PD canreceive and measure user performance data via the different sensors.While the diagram 100 of FIG. 1 illustrates the use of two sensors, itwill be appreciated that any number of sensors that characterize theperformance of the user while exercising can be used (including a singlesensor). Such sensors may be wirelessly connected to the PD and/orphysically integrated with the PD. As will be described in furtherdetail below, the PD can be integrated into the headphone fully orpartially (see the diagram 200 of FIG. 2, configurations 3, 4), bein-line with the audio/media source (see diagram 200 of FIG. 2,configuration 2) or it can be integrated to a media source (e.g., amusic player such as an IPOD, etc.). PD can also act as a performancestorage device that record one or more sessions of workout which canthen be uploaded to TCS for review.

FIG. 2 is a diagram 200 that illustrates four sample configurations ofthe PD (it will be appreciated that other configurations consistent withthe current description can also be implemented). With the firstconfiguration, the PD is part of a media source (e.g., smart phonehardware platform such as an IPHONE, an ANDROID-based phone, etc.).Audio delivered by the media source can be commingled with commands/datafrom the PD. With the second configuration, the PD is in-line with amedia source and headphones. For example, the PD can becoupled/connected to the audio jack of a media source (e.g., IPHONE,etc.) and additionally has headphones extending therefrom (the PD canhave integrated headphones or it can have an audio jack). With a thirdconfiguration, the PD is integrated into headphones (or integral withthe headphones) and connected to a media source. With this variation,the media source does not have any special client software relating tothe PD. With a fourth configuration, the PD is built into the headphonesand additionally, the media source has resident client software toimplement some of the aspects described herein.

In other implementations, the PD can communicate with Fitness Equipment(FE) such as a treadmill, elliptical trainer, rowing machine, etc.either directly or via a network (e.g., Internet, local network, etc.).The PD can receive sensor feedback from FE sensors, communicate to theTCS via the FE and/or the FE can have training content (TC as definedbelow) available for the PD. With such arrangements, the FE can act asone of the sensors characterizing the performance of the use. Inaddition, the PD can send workout results to the FE for display andfurther to the TCS (i.e., the FE is almost acting like a laptop/PC). ThePD can also connect to the FE and the FE can be used as a display forthe measurements/routines/guidance, etc. of the user.

In other implementations, the PDs can connect to other PDs directly orvia TCS (and a network, etc.) to create a virtual race (i.e., the PDscan all use the same TC and the linked PDs or the TCS compare theresults). The user can hear that ‘You are 2nd in the race, keep itup’—this could be done real-time with other PDs or non-realtime based onresults that had been logged by other PDs to the TCS.

Portable Device (PD).

The PD can have a variety of interfaces for acquiring data from thesensors, providing guidance to users, devising training plans, and forcharacterizing post-workout performance. The PD can have an acousticinterface that provides, for example, voice prompts and voice/speechrecognition for setup, operation and control of the PD. The PD can havea gestural interface such that certain modes and functions might beaccessed with specific head movements (e.g., nodding, etc.). Thegestural interface can require one or more accelerometers or othersensors to characterize relative body movement of the user (i.e. the PDcan be controlled by the sensors worn or used by the user).

The guidance provided by the PD can interrupt content being played bythe media source and/or it can overlay such content (with the volume ofthe media source content being temporarily reduced such that the PDguidance can be heard). In some cases in which the PD is integrated withthe media source and/or the PD includes a two-way communicationinterface to a media source, the PD can use and select appropriate musictempo matched to desired TC stride rate/cadence. The user can alsoselect which songs to play at any given time (and in some cases, theavailable songs can be grouped according to their tempo, intensity,etc.). With such an arrangement, tempo information for various songs canbe stored on the media source and accessed by the PD.

The PD can bridge ANT+ and Bluetooth to enable use of different sensorsoperating in ANT+, BT low energy or BT for music (see diagram 200 FIG.2, configuration 4). Currently there are few wireless protocols forreporting sensor data (ANT, Blue Tooth (BT), BT_Low_Energy (BT_LE), andothers). This causes several interoperability issues. With the use ofthe PD, the PD can be built to bridge and receive different wirelessprotocols and make them interoperable. For example, a ANT HR monitor mayreport data over ANT+ radio, but a smart phone may transmit BT. The PDmay receive the ANT data and send it to the media source (for example,via BT, etc.) where some of PD processing is done. WiFi can be employedby the PD for automatically syncing with one or more remote services.

The PD can also include a removable media card slot (such as SD card).The media card can be used to provide TC and other media. The media cardcan also include user settings, such as age, heart rate zones, max heartrate, etc. The media card may also include music to be played for theuser. In one arrangement, the media card can receive workout performancedata or other data recorded by the PD. In addition, the media card canbe connected (either directly or indirectly) to a computer/cellphone/etc. to download new TC and to upload workout results to TCS

The PD and sensors can be made waterproof to be suitable for swimmingtraining which enables audio feedback during the swim without the needto stop to listen to the coach. In addition, PD can have built incircuit to harvest kinetic energy from user movement and/or from solarcells. This energy may be used to charge the internal battery. Inaddition, the PD can have various sensors (e.g., position sensors, etc.)which can be used to provide training content (TC) which is based on theposition of the user and/or the position information can be used toidentify when a certain portion of a workout (e.g., swimming prior tocycling, etc.)

Training Content (TC).

TC can be characterized as a workout routine that coaches the user tofollow an exercise routine (as specified, for example, in a trainingplan, etc.). The TC can be adjusted real-time while the user performsthe routine based on the intelligence the PD has (or as it receivesreal-time performance date from sensors or statistics from history, pastperformance, weather conditions, from a remote coach, etc.). The TC cancomprise audio feedback/coaching/or non-coaching contextual segmentsthat instructs the user to perform the workout routine, soothing audio,technique tips, etc. Each audio segment of TC can have an audio titlethat describe the TC content—such as ‘1 h Interval run’. The user canlisten to each title before selecting a TC on the PD. In addition todynamic guidance—the TC can provide (on demand) performance information(time, distance, speed, power, cadence, calories) and contextualinformation (actual time, altitude, location, weather, messages fromfriends, hydration and food prompts) and training information (book ontape) “most runners make the mistake of going too hard but not frequentenough”.

TC can be constructed of steps that are measured in time, distance,calories burned, etc. The TC can also recommend hydration and calorieintake during user performance. These can be calculated based on burnedcalories and measure weight loss (sweat), user temperature, and the like(as measured by or derived from one or more of the sensors). For eachstep, TC can have intensity targets such as HR, Speed, Power, Cadence.Each TC can have associated coaching audio files to cover each coachingscenario. The audio files can be indexed in a way that the PD knows whataudio file needs to be played at any given time or intensity. The TC canbe adapted during the exercise based on external feedback (i.e. remotecoach can send the PD new audio prompts wirelessly) or based on currentsensor readings, such as environmental factors. The PD can calculateappropriate coaching to the user depending on user's performance (orexpected performance, predicted outcome, or past performance, orstatistics on other users performing the same TC) during the stepsrelative to the targets and will play the related audio file or mayinstruct the user to choose a different workout or Training Plan (TP).

Several TC files can be used in combination to construct an audio-basedTP (which results in a series of performance-related milestones, etc.).For example, the TP can adjust dynamically (based on two or more TCfiles) based on user performance. In addition, the TC files can beconnected to reflect a multi-event/routine exercise such asswim—cycle—run, etc. The PD can detect when each of the events/routinesare completed so that the next event/routine can be automaticallyinitiated. TP can be characterized as a longer-term progress to improvefitness, lose weight, etc. A user performs the workout and follows theTC and a log file can be generated to record the performance. This logfile can be uploaded to the TCS for further analysis.

As stated above, the TC can be a description of the workout in steps.One of several steps joined together construct the workout. The stepscan include coaching points dispersed in time/distance/calories, thatlink to certain audio files. The coaching points can comprise a staticpre-recorded audio file to be played to the user based on currenttime/distance/calories burned and/or one or more coaching messages. Thecoaching messages can be played based on the sensor readings such asbio-metric HR information/environmental sensors feedback or based onhistory of past events/statistics of the user or other users.

The TC file or structure can also include workout metadata that maydescribe the workout's attributes and information related to theworkout. The metadata is part of the TC file structure. The attributesof the workout can be the sport (such as running, cycling, yoga, etc.),overall difficulty level, workout intensity, the terrain it is suitablefor (i.e. for hills), what equipment may be needed to perform theworkout, etc. The TC metadata can be used by the PC or TCS to select andrecommend workouts to the user. The metadata can be used to filter TCfrom the TCS based on a user's current fitness level or profile, basedon location, based on equipment available (i.e. RFID recognized workoutequipment). Further the TC metadata can include author information,commercial information (price, sponsor, etc.). The TC may also includeaudio files that are advertising messages. FIG. 11 is a view 1100 thatillustrates an interface for specifying metadata so that it can beassociated with a workout/training plan. As noted above, the metadatacan include difficulty, coach name, type of workout, title of workout,duration, distance, advertising info, and more.

Training Content Server (TCS).

The TCS can be a remote or on premise server that is accessible by thePD directly, wirelessly or accessible via the media source (e.g.,IPHONE, etc.) over a communications network such as the Internet. Inaddition, or alternatively the functionality of the TCS can be providedlocally on a smartphone or table computer app (e.g., IPAD app, etc.). Inaddition, a user can connect to the TCS via a standard PC (e.g., the TCScan be accessed via a website or it can form part of resident clientsoftware, etc.) The TCS can be coupled to a plurality of PDs so thatreal-time guidance/coaching can be provided to each user. In some cases,the guidance of a first user can be based on the performance of a seconduser. For example, in competitive situations in which the first userseeks to have a better time than the second user or when the first andsecond users are working out together. In addition, for certainapplications such as wellness or gym-based workouts, the TC can bebroadcasted to PDs of users (which the users can accept). Examplesinclude a spin class, a group beach workout, cross-country trailrunning, etc.

The TCS can store/host a user profile for the user, TC, fitnessstatistics, training plans (TPs), and other information relating to theuser for the PD to access such as maps, etc. The TCS can authenticateeach user (e.g., by measured heart rate, voice recognition, etc.) anddevice to be able to offer new TC for download and upload executed TClog files. In addition, TCS is a platform for coaches that can enablecoaches to create and publish TC and as well, ‘manage’ athletes andmeasure and recommend new TC (i.e., the coaches can define new TPs via awebsite which are downloaded (automatically or on-demand) to the PDs oftheir various athletes). In addition, TCS can also have built-inintelligence to analyze user profile, TC log files to assess users'fitness level, recommend new TC, alert the user/doctor/coach of healthissues, etc. In addition, TCS can have a commerce option that enablesusers to buy TC, coaching services, etc. The TCS can also send targetedadvertising to users in the system based on analysis of theirworkouts/profile/etc.

FIG. 5 is a view 500 of the TCS that shows various training plans whichare available. A user can select one or more of these training plans sothat they can be downloaded to or otherwise associated with the PD forthe user. The presented training plans can be filtered based on variouscriteria including fitness goals of the user, activity types, andparticular coaches. FIG. 6 is a further view 600 showing furtheravailable training plans on the TCS and additional attributes/featureswhich can be used to categorize or otherwise sort/filter the trainingplans presented to the user. In some cases, individual workouts can bedisplayed as opposed to training plans which include multiple workouts.The TCS portal views can include advertising relating to training plansor other wellness/fitness products or services.

The TCS can be configured so that a user can be rewarded based on the TCperformance with ‘points’ or other incentives. Points could be used tobuy new TCs, TPs, or other product in lieu of money or they can be givento charitable causes. In addition, TCS can allow a user share TC logfiles and TC results with others (e.g., post on FACEBOOK, TWITTER,etc.). On the TCS, the user can see what TC is downloaded to the PD andbe able to sync up to get most recent TC files (or new versions of thePD firmware). The user can also view the upcoming TP or TC in a form ofa calendar and arrange the TC for any given day. The upcoming TCs andschedule can be emailed, messaged (SMS, MMS), etc. to the user. Thecalendar can also be synced with other electronic calendar such asGOOGLE Calendar. The TCS can generate a log characterizing each TC userhas executed (i.e., used in a workout) and if the user had uploaded thelog file, the TCS can plot the performance to the user for any given TC.TCS can also measure user performance relative to other users and havethem compete or just compare to averages of other similar users.

Various analytics and graphical representations can be generated by theTCS (either directly via a web service) or as part of client software ona media source or on the PD. For example, users can overlay graphicallydifferent TC to see variances and changes or improvements. The TCS canalso recommend nutrition recommendations based on the users calorie burnand fitness objectives (i.e. weight loss). TCS can be linked to otherexternal nutrition systems (e.g., via web services, etc.) that read TClog files. The TCS can be configured to host competitions of users toexecute a TC or TP and compare performances based on uploaded TC logfiles. Moreover, the TCS can be configured so that users can connect andfollow other users and challenge other users to perform TC, etc.

FIGS. 7 and 8 are views 700, 800 characterizing various performancemetrics in relation to a user. Such analytics can be based on a user'sperformance in a single workout and/or they can be based on a user'sperformance across multiple workouts/training plans. The view 700 ofFIG. 7 shows profile information for a user as well as a score for aworkout, and various stats regarding the workout (e.g., total time,distance travelled, calories burned, and average pace). The view 800 ofFIG. 8 shows a user's performance in relation to specific zones (i.e.,segments) of a workout having differing performanceparameters/guidelines. These analytics can be generated, for example, byanalyzing a training log of a user (that characterizes his or herperformance during a workout) for compliance within the parametersspecified by the training plan/workout.

Training Content Generator (TCG).

The TCG is a platform for coaches and users to create and publish newTC. The TCG can be a software application resident on the PD or a clientcomputer (laptop, PC, smart phone, media player, etc.) or it can be asoftware application on a remote or on premise computer accessible via,for example, the Internet. FIG. 10 is a view 1000 of a sample interfacefor specifying zones/times for a workout, associated performanceparameters, and corresponding guidance. Using this interface, a coachcan design a workout, associated prompts, training zones, timing and thelike. Fields can include notes that characterize certain aspects of theworkout.

The platform executing/interfacing with the TCG can have an audio input(to allow for voice-based instructions and other interaction). The TCGcan offer an easy visual way to building and publishing (drag and drop)TC steps, assigning activity intensities/set and workout goals/nutritiontips/hydration notes for each step within the workout. The TCG canassign coaching audio files for each performance scenario. These audiofiles can be selected based on predetermined logic, or based on dynamicmodeling based on events that have happened during the exercise. TCG canalso allow inserting of commercial messages.

The TCG can also offer the coach a method to record the personalcoaching audio files for the TC. The TCG can also compress such audiofiles to be more suitable for the PD. The TCG can also be configured toprovide a user-friendly ability for a coach to upload to allow for thepublishing of the TC for any give user and add it to the user's TClibrary, TP or calendar (FIG. 9 shows a view 900 of various scheduledworkouts for a user based on one or more training plans). Via the TCG orTCS users and coaches can interact via instant messaging, email,TWITTER, FACEBOOK, etc. Moreover, the TCG can also be configured toinclude premium content which must be purchased by users. For example, acoach can assign a price to the content and charge users for theuse/download of this content. The TC can be posted on the TCS whereusers can see it, buy it and download it to their PD. The user canpreview the TC by listening samples of the audio.

As mentioned above, the PD delivers audio information to a user in anyof the configurations illustrated in the diagram 200 of FIG. 2. Thisaudio information is advantageous because most Heart Rate Monitors (HRM)are watch/wrist mounted devices. This limits the practical size of thedisplay. Furthermore, the amount and type of information that can bedisplayed is limited. Very small type/font is not practical to readwhile exercising (i.e. running) With older age, it is likely that aperson is not able to read such a display without reading glasses. SomeHRMS have added beeps to alert the user for certain actions. Such beepsare also limited and possibly hard to hear during a run, especially ifthe person is listening to music via headphones (this is very typical).

The PD can be characterized as an extension of the LCD display of HRMsfor athletes. The audio feature can be described as an Audio BasedDisplay (ABD) system that is/can be integrated to the headphones. Withreference to the diagram 300 of FIG. 3, the ADB can automaticallyconnect wirelessly (e.g. ANT+) to the HRM and related sensors (e.g.,accelerometers, pace sensor, etc.). The ADB can switch to HRM messages(or other audio guidance) and not play music to speakers during HRMmessages, or the volume of the music can be temporarily lowered and themessages/guidance can be played over the music. The HRM message/guidancecan be delivered in a push fashion (automatically sent to the user basedon performance data obtained from the sensors and/or based on timeintervals) or it can be delivered in a pull fashion (e.g., a user canactivate a button on the PD to get stats relate to the workout includingHR, miles travelled, calories burned, etc.).

The ADB can have buttons for a user to initiate the ADB settings, orrequest information from the HRM. The ADB can also include a microphonefor receiving voice input from the user much like car navigationsystems—and the PD may give all information via audio. The user can, forexample, request, on-the fly, different TC content and/or request datafrom the sensors (e.g., heart rate).

In addition, HRMs are increasingly complex to set up and most users donot pay attention to the complicated setup or manuals for the HRM. TheADB can enable voice guides/user guide for the HRM use and settings.

Automatic HR Training Zone Setup.

It can also be difficult for a user to understand the HR values andcertain HR training zones. Each person's heart is different and theheart muscle changes over fitness and age (the HR zones are described asa % of max HR or % of Lactate Threshold HR). Most users do now knowtheir max heart rate (or LTHR) to be able to calculate and determineaccurate HR training zones.

Many formulas (such as 220-age) have been developed to average andestimate HR Max and then a % of the Max is used to determine differentzones. Even this is still cumbersome and requires math and good memoryto remember each 5-7 zones start and end values. The current subjectmatter can use a protocol involving a HR test workout to receive theuser's HR values that are then used automatically to adjust the correcttraining zones. To do this, the user can download the HR test TC tohis/her PD and start the workout. The workout can guide the user toincrease intensity gradually until a certain LT HR is reached. Thisprotocol is carefully drafted to guide the user accurately andconsistently to a certain Perceived Rate of Exertion level (RPE). It hasbeen demonstrated that this method is reliable to assess users LTHR.During this process the user does not need to hear or know anythingabout his/her HR values. Everything is calculated automatically. The PDand TCS (or other server) can receive the log file of this workout anddetermine the HR value (while eliminating obvious error readings) fromthe second last step of this workout (the Max HR during the second lastsegment will be a close approximation of user's LTHR.) The values canthen be checked against the known formulas (e.g. 220-age) to furtherverify that the measurement data is accurate and no gross errors aremade. The PD and TCS can then store the user's zones under his/herfitness profile and scale all future workouts to these zones.

A user need not get their HR to max values (dangerous for unfit people)and user need not know their HR values—everything relating to target HRand monitoring of same can be done automatically. Also, as the user'sfitness improves the zones are likely to change. The TCS and PD canenable the user to repeat this test multiple times to keep the HRtraining zones current.

Combination of Audio Files and Workouts.

In order for a user to get appropriate feedback during a workout (WO),certain audio files need to be available at the PD that are associatedwith the WO. As described above, the TCS can combine the authenticcoaching prompts with the WO. In addition certain non-coaching systemprompts can be used to alert the user.

To get most authentic training, the PD is not using a generic prompts toguide the user. Instead, each WO is combined with relevant coachingaudio that is interacting with the HR or other sensor values. The coachcan construct the WO by describing each step of the WO and what are thecoaching parameters during this step—and what are the desired coachingprompts. The coach can then be asked to record the prompts with the TCG(or alternatively the coach can select pre-recorded coaching guidance).

The coaching prompts can be played at any given time, distance,pace/speed, cadence, calorie burned. In addition, effort level coachingcan be set (in-range, above range and below range) to help guide theuser to either maintain, decrease or increase his/her effort during thestep of the WO. As stated above, the benefit of the current subjectmatter is that it allows more authentic personalized coaching that ismore motivating vs. generic ‘answering machine’ voice and can be muchmore accurate because it is interacting with actual user performance . .. . In addition, the current subject matter also enables easy use oflanguages as the coach can record with any language.

Use of Modeling to Teach User from Others/Examples—Running FormGuidance—Real-Time.

The current options for running form training in real-time is to have acoach next to you to only visually observe and coach the User. This isnot practical in many cases and would be very expensive for the user tohire a coach for each run. The alternative is to have someone take avideo of the user running and then post analyze it by coach. The postanalysis does not result in effective feedback and it is not done inreal-time and with instant feedback.

The TCS can enable people to learn running form and get real-timeinstant feedback of running form that can effectively improve therunners economy and injury prevention. The PD can measure user runningcadence (with the use of a foot pod as one of the sensors incommunication with the PD) and recommend a higher cadence to promotemid-foot striking vs. slow cadence and possible heel striking. Furtherother sensors can be worn by or coupled to the user to detect his or herform while performing/undergoing fitness and/or wellness movements. Forexample, sensors such as gyro, position sensors for other sportsmeasuring acceleration, position, swing, repetition, force, etc. can beutilized and such sensors can be embedded in compatible sporting goodslike apparel, bikes, rackets, clubs, straps, etc. The sensors canmonitor both large movements of the user—but also fine movements(especially as it relates to resistance training/weight training, etc.).

By modeling good runners (recording vast amount of runner data and theirrelated sensor readings and correlating it with User profile), the TCScan be trained to compare the user to others and suggest improvements tothe running form. The use of modeling data can also be used to identifymore optimal/economical movements for activities such as running andswimming.

PD Architecture.

The PD behavior can be defined in terms of states, transitions andevents. The PD firmware can be in one and only one defined state at anygiven time. While in a specific state, PD software follows a sequence ofactivities and upon completion, transitions to another state. Sometransitions depend on events such as timer expiration or user buttonpress. A summary of these states, transitions and events is depicted inthe state diagram 400 of FIG. 4.

STATE_POWER. This is the state that the PD finds itself upontransitioning from no power to when power is provided to the PD device.The device goes through this state only once after power-up. Hardwareinitialization that needs to be done once and is common to the rest ofthe states is implemented here.

STATE_DORMANT. To conserve battery and extend the use of PD, a specialpower save mode is developed. In this state the PD requires the minimumamount of power. The main purpose of this state is to draw minimum powerbetween usages of the device. A transition out of this state is requiredbefore any use.

STATE_INIT. This state is where the PD hardware is verified. Batterystatus, radio and sound logic is tested.

STATE_CONNECT. In this state, the PD is trying to connect to near-bysensors.

STATE_FAULT. This state is reached after failed hardware test or pairingin STATE_INIT.

STATE_DWELL. This is the normal active state, while is use and withfunctional hardware. In this state, the MCU draws minimal power whilestill responding to the user buttons, to internally generated timerevents and to external interrupts.

Upon entering this state from STATE_CONNECT, the volume is adjusted to“soft start”. This way the user is not blasted by too loud volume.

STATE_PROMPT. This state is reached when the user wishes to hearprompts. Output audio is rerouted from the external source to theinternal prompts.

Data previously stored during STATE_SENSE is used to index thecorresponding “number prompt”. It can be heart rate or distance based onworkout type and paired sensors.

When a transition to this state is from [info] transition, then thecurrent voice routing is toggled between outputting to the headphonefrom prompts or from the 3.5 mm input jack.

STATE_SENSE. This state is reached periodically when a predeterminedtimer expires or at any given time as determined by the workout file.Sensed data is gathered from connected sensor devices, formatted andstored.

STATE_COACH. This state is reached periodically when a predeterminedtimer expires. Coaching is active or not based on inputs from the [play]button. While coaching is active a [play] push will toggle to thepassive state.

STATE_USB. This state is reached when user plugs the PD into an activeUSB host port. When a user unplugged the PD from the USB host, atransition to STATE_DORMANT takes place.

In this USB state, the PD battery is charged by on-board powercircuitry. The status of charge progress is conveyed to the user via theLEDs. USB data interface is supported in this state.

STATE_VOLUME. This state is reached when the user presses the [Volume]button. The device volume will increment one level per press and willback to minimum volume after the maximum volume is reached. For every[volume] press the prompt “volume” will be played once.

STATE_WORKOUT. This state is reached when a user presses the [WO-up] or[WO-down] buttons. The workout selected is the next workout that wascurrent before entering this state or the previous workout—based on upor down push. When done with this state PD transitions to STATE_DWELL. Avoice prompt is announcing the current workout title.

Actual workout is selected when a user presses the [Play] button. When aworkout is already selected the [Play] button is used to control theprompts or [pause/stop] the workout.

STATE_LOG. This state logs the current workout activity data intonon-volatile memory.

When [pause] key is pressed, a special marker is recorded and thenlogging is suspended. Logging resumes when [play] key is pressed (also aspecial marker can be added to the log file).

System transitions. Transitions among states are one directional arrowbetween two states. These arrows have two type—named and un-named.Un-named arrow depicts a natural transition from one state to the nextstate upon normal exiting out of the current state.

Named transitions are based on events described in more details for eachsuch named transition below:

-   -   TRAN_BAD        This is an exit from STATE_INIT or STATE_CONNECT with testing        resulting in errors.    -   TRAN_KEY_VOLUME        This is a single short press of the [Volume] key.    -   TRAN_KEY_POWER    -   This is a single short press of the [Power] key. The press needs        to be longer than [0.5] seconds to be a valid press.    -   TRAN_KEY_INFO        This is a single short press of the [Info] key    -   TRAN_KEY_WORKOUT        This is a single short press of the [WO-up] or [WO-down] key    -   TRAN_KEY_PLAY        This is a single short press of the [Play] key.    -   TRAN_KEY_INFO        This is a single short press of the [Info] key.    -   TRAN_T1        This is timer generated transition to generate voice prompts.    -   TRAN_T2        This is an ANT radio interrupt indicating new data from a        sensor.    -   TRAN_T3    -   This is the expiration of a timer set to, periodically, store        activity data from sensors into non-volatile memory.    -   TRAN_T4        This is the expiration of a timer set to, periodically, enter        execution of coaching    -   TRAN_USB This is a transition from when PD is connected to USB        to when PD is not connected to USB.

FIGS. 12-15 illustrate various process flow diagrams for implementingthe subject matter described herein. FIG. 12 is a diagram 1200 in which,at 1210, data is accessing data that includes a training plan specifyingat least one workout. Each workout in turn specifies at least onephysical exercise and associated performance parameters relating to theat least one physical exercise. In addition, at 1220, data is received,during a workout by a user according to the training plan, thatcharacterizes at least one of a physiological measurement of the user, aposition of the user, and an environment of the user. Thereafter, at1230, it is determined based on the received data and using the trainingplan, guidance to provide to the user during the workout in order tocomply with the training plan and the associated performance parameters.Guidance is then provided, at 1240, in real-time to the user during theworkout to allow the user to adjust his or her workout accordingly.

FIG. 13 is a diagram 1300 in which, at 1310, data is accessed thatcomprises a training plan specifying at least one physical exercise andassociated performance parameters. In addition, at 1320, data isreceived from at least one exercise machine characterizing interactionby a user with the exercise machine during a workout. It is determined,at 1330, based on the received data and using the training plan,guidance to provide to the user during the workout in order to complywith the training plan. Guidance is then provided, at 1340, to the userin real-time during the workout to allow the user to adjust his or herworkout accordingly.

FIG. 14 is a diagram 1400 in which, at 1410, a virtual race is initiatedamongst a plurality of portable devices. Each portable device is used bya different single user of a plurality of users and includes datacharacterizing a training plan associated with the virtual race.Thereafter, at 1420, performance of each user is monitored whileengaging in the virtual race using the respective portable devices. Itis determined, at 1430, based on the monitored performance and using thetraining plan, guidance to provide to each user during the workout inorder to comply with the training plan. Guidance is then provided, at1440, to the user in real-time during the virtual race to allow eachuser to adjust his or her performance accordingly.

FIG. 15 is a diagram 1500 in which, at 1510, data is received that isgenerated from at least one biometric sensor characterizing performanceof a user in connection with each of a plurality of a plurality ofworkouts in relation to respective training plans. Data is generated, at1520, that comprises at least one analytic characterizing theperformance of the user in relation to the training plans. Thereafter,at 1530, data is generated and provided that comprises at least onereport based on the generated at least one analytic and that provides aview of the at least one analytic.

One or more aspects or features of the subject matter described hereinmay be realized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, and/or combinations thereof.These various implementations may include implementation in one or morecomputer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device (e.g., mouse, touch screen, etc.), andat least one output device.

These computer programs, which can also be referred to programs,software, software applications, applications, components, or code,include machine instructions for a programmable processor, and can beimplemented in a high-level procedural and/or object-orientedprogramming language, and/or in assembly/machine language. As usedherein, the term “machine-readable medium” refers to any computerprogram product, apparatus and/or device, such as for example magneticdiscs, optical disks, memory, and Programmable Logic Devices (PLDs),used to provide machine instructions and/or data to a programmableprocessor, including a machine-readable medium that receives machineinstructions as a machine-readable signal. The term “machine-readablesignal” refers to any signal used to provide machine instructions and/ordata to a programmable processor. The machine-readable medium can storesuch machine instructions non-transitorily, such as for example as woulda non-transient solid state memory or a magnetic hard drive or anyequivalent storage medium. The machine-readable medium can alternativelyor additionally store such machine instructions in a transient manner,such as for example as would a processor cache or other random accessmemory associated with one or more physical processor cores.

These computer programs, which can also be referred to programs,software, software applications, applications, components, or code,include machine instructions for a programmable processor, and can beimplemented in a high-level procedural language, an object-orientedprogramming language, a functional programming language, a logicalprogramming language, and/or in assembly/machine language. As usedherein, the term “machine-readable medium” refers to any computerprogram product, apparatus and/or device, such as for example magneticdiscs, optical disks, memory, and Programmable Logic Devices (PLDs),used to provide machine instructions and/or data to a programmableprocessor, including a machine-readable medium that receives machineinstructions as a machine-readable signal. The term “machine-readablesignal” refers to any signal used to provide machine instructions and/ordata to a programmable processor. The machine-readable medium can storesuch machine instructions non-transitorily, such as for example as woulda non-transient solid state memory or a magnetic hard drive or anyequivalent storage medium. The machine-readable medium can alternativelyor additionally store such machine instructions in a transient manner,such as for example as would a processor cache or other random accessmemory associated with one or more physical processor cores.

To provide for interaction with a user, the subject matter describedherein can be implemented on a computer having a display device, such asfor example a cathode ray tube (CRT) or a liquid crystal display (LCD)monitor for displaying information to the user and a keyboard and apointing device, such as for example a mouse or a trackball, by whichthe user may provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well. For example,feedback provided to the user can be any form of sensory feedback, suchas for example visual feedback, auditory feedback, or tactile feedback;and input from the user may be received in any form, including, but notlimited to, acoustic, speech, or tactile input. Other possible inputdevices include, but are not limited to, touch screens or othertouch-sensitive devices such as single or multi-point resistive orcapacitive trackpads, voice recognition hardware and software, opticalscanners, optical pointers, digital image capture devices and associatedinterpretation software, and the like.

The subject matter described herein may be implemented in a computingsystem that includes a back-end component (e.g., as a data server), orthat includes a middleware component (e.g., an application server), orthat includes a front-end component (e.g., a client computer having agraphical user interface or a Web browser through which a user mayinteract with an implementation of the subject matter described herein),or any combination of such back-end, middleware, or front-endcomponents. The components of the system may be interconnected by anyform or medium of digital data communication (e.g., a communicationnetwork). Examples of communication networks include a local areanetwork (“LAN”), a wide area network (“WAN”), and the Internet.

The computing system may include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

The subject matter described herein can be embodied in systems,apparatus, methods, and/or articles depending on the desiredconfiguration. The implementations set forth in the foregoingdescription do not represent all implementations consistent with thesubject matter described herein. Instead, they are merely some examplesconsistent with aspects related to the described subject matter.Although a few variations have been described in detail above, othermodifications or additions are possible. In particular, further featuresand/or variations can be provided in addition to those set forth herein.For example, the implementations described above can be directed tovarious combinations and subcombinations of the disclosed featuresand/or combinations and subcombinations of several further featuresdisclosed above. In addition, the logic flow(s) depicted in theaccompanying figures and/or described herein do not necessarily requirethe particular order shown, or sequential order, to achieve desirableresults. Other implementations may be within the scope of the followingclaims.

What is claimed is:
 1. A method for implementation by one or more dataprocessors comprising: accessing, by at least one data processor of aportable physical exercise training device, data comprising a trainingplan, the training plan specifying at least one workout, each workoutspecifying at least one physical exercise and associated performanceparameters relating to the at least one physical exercise; receiving, bythe at least one data processor over a wireless connection using one ofa plurality of wireless protocols, while a user is completing a workoutspecified by the training plan, data characterizing at least one of aphysiological measurement of the user, a position of the user, and anenvironment of the user, the receiving further comprising bridging, bythe at least one data processor of the portable physical exercisetraining device, the plurality of wireless protocols to make the datacharacterizing at least one of a physiological measurement of the user,a position of the user, and an environment of the user interoperable bythe portable physical exercise training device; and determining, by theat least one data processor and based on the received interoperable dataand using the training plan, guidance to provide to the user during theworkout in order to comply with the training plan and the associatedperformance parameters; and initiating, by the at least one dataprocessor, provision of the guidance to the user in real-time during theworkout to allow the user to adjust his or her workout accordingly;wherein the training plan is selected by the at least one data processorand based on the interoperable data characterized by the at least one ofthe physiological measurement of the user, the position of the user, andthe environment of the user received during a previously completedtraining plan; wherein at least a portion of the data is generated by atleast one sensor; wherein the at least one sensor comprises at least onebiometric sensor characterizing at least one physiological measurementtaken from the user during the workout; wherein the data from the atleast one biometric sensor is received continuously and in real-timeduring the workout, and wherein the guidance adapts based on the datareceived from the at least one biometric sensor, the training plan, andthe associated performance parameters; wherein the training plancomprises training content that coaches the user follow to an exerciseroutine, wherein training content is used to provide adjustable guidanceto the user in real-time based on the performance of the user; whereinthe guidance is variable based on criteria specified by the trainingcontent, the criteria comprising one or more of calories burned by theuser during the workout, weight loss of the user during the workout, andtemperature of the user during workout; and wherein the training contentis broadcasted to a plurality of users concurrently engaging in theworkout.
 2. A method as in claim 1, wherein the at least one biometricsensor characterizes distance travelled by the user during the workout.3. A method as in claim 1, wherein the at least one biometric sensorcharacterizes at least one of: heart rate of the user, a distancetravelled by the user during the workout, a current speed of the userduring the workout, a power metric relating to the workout, a cadence ofthe user during the workout, a number of calories burned by the user, abreathing rate of the user, a galvanic skin response of the user, andbody temperature of the user.
 4. A method as in claim 1, wherein theguidance comprises one or more of: audio guidance and video guidance. 5.A method as in claim 1, wherein the training plan comprises a pluralityof workouts each having different training criteria.
 6. A method as inclaim 5, wherein at least two of the workouts have differing associatedperformance parameters.
 7. A method as in claim 1, wherein theaccessing, receiving, and determining are performed by a portable deviceworn by the user comprising at least one data processor and memory.
 8. Amethod as in claim 7, wherein the portable device comprises at least oneof headphones and a display interface.
 9. A method as in claim 8,wherein the portable device and the headphones are integrated.
 10. Amethod as in claim 7, wherein the portable device wirelesslycommunicates with at least one sensor characterizing performance of theuser during the workout.
 11. A method as in claim 7, wherein theportable device is a mobile phone.
 12. A method as in claim 1, whereinthe training plan is selected among a plurality of training plans by theuser via an online portal, and each training plan comprises metadatacharacterizing one or more attributes of the training plan, the metadatabeing searchable by the user via the online portal.
 13. A method as inclaim 12, wherein each workout comprises metadata characterizing one ormore attributes of the workout, the metadata being searchable by theuser via the online portal.
 14. A method as in claim 1, wherein theguidance comprises information characterizing at least one of: elapsedtime of the workout, a distance travelled by the user during theworkout, a current speed of the user during the workout, a power metricrelating to the workout, a cadence of the user during the workout, anumber of calories burned by the user, a breathing rate of the user, agalvanic skin response of the user, and body temperature of the user.15. A method as in claim 1, wherein the guidance comprises at least oneof: a current time, a current altitude of the user, a current locationof the user, weather at the current location of the user, messages fromthird parties to the user, hydration prompts to the user, and foodprompts to the user.
 16. A method as in claim 1, wherein the trainingcontent is stored on a training content server, the training contentserver being accessible by at least one computer network, the trainingcontent server storing a profile for the user comprising performancedata regarding historical workouts and associated training plans.
 17. Amethod as in claim 1, wherein the training plan is generated using atraining content generator platform, the training content generator planprovides a graphical user interface for generating training plans andworkouts.
 18. A method as in claim 17, wherein the training contentgenerator allows a user to specify, for a workout, one or more of:activity intensities, nutrition guidelines, and hydration guidelines.19. A method as in claim 1, wherein the guidance is provided in responseto the user activating an element on a portable device worn by the userduring the workout, or the guidance is pushed to the user during theworkout based on the received data.
 20. A method as in claim 1, whereinthe training plan is selected based on a heart rate test previouslyexecuted by the user, the heart rate test provides guidance to the userrequiring various levels of exertion while, at the same time, monitoringa heart rate of the user.
 21. A method as in claim 1, furthercomprising: initiating, by at least one data processor, provision of atleast one advertisement to the user during the workout.
 22. A method forimplementation by one or more data processors comprising: accessing, byat least one data processor of a portable physical exercise trainingdevice, data comprising a training plan, the training plan specifying atleast one physical exercise and associated performance parameters;receiving, by the at least one data processor over a wireless connectionusing one of a plurality of wireless protocols, data from at least oneexercise machine characterizing interaction by a user with the exercisemachine while a user is completing a workout, the receiving furthercomprising bridging, by the at least one data processor of the portablephysical exercise training device, the plurality of wireless protocolsto make the data from at least one exercise machine characterizinginteraction by a user with the exercise machine interoperable by theportable physical exercise training device; determining, by the at leastone data processor and based on the received interoperable data andusing the training plan, guidance to provide to the user during theworkout in order to comply with the training plan; and initiating, bythe at least one data processor, provision of the guidance to the userin real-time during the workout to allow the user to adjust his or herworkout accordingly by transmitting data encapsulating the guidance to amobile phone worn by the user, the data encapsulating the guidance beingtransmitted in real-time while the user is completing the workout;wherein at least a portion of the data is generated by at least onesensor; wherein the at least one sensor comprises at least one biometricsensor characterizing at least one physiological measurement taken fromthe user during the workout; wherein the data from the at least onebiometric sensor is received continuously and in real-time during theworkout, and wherein the guidance adapts based on the data received fromthe at least one biometric sensor, the training plan, and the associatedperformance parameters; wherein the training plan comprises trainingcontent that coaches the user follow to an exercise routine, whereintraining content is used to provide adjustable guidance to the user inreal-time based on the performance of the user; wherein the guidance isvariable based on criteria specified by the training content, thecriteria comprising one or more of calories burned by the user duringthe workout, weight loss of the user during the workout, and temperatureof the user during workout; and wherein the training content isbroadcasted to a plurality of users concurrently engaging in theworkout.